package io.renren.entity;

import io.renren.validator.group.AddGroup;
import io.renren.validator.group.UpdateGroup;
import org.hibernate.validator.constraints.NotBlank;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import java.io.Serializable;
import java.util.Date;



/**
 * 行政用人需求管理
 *
 * @author zhangheng
 * @email zh_123shmily@163.com
 * @date 2017-07-14 18:38:18
 */
public class DemandManagementEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    //ID
    private Integer id;
    //申请部门
    private String applyDept;
    //申请部门id
    private String applyDeptId;
    //需求岗位
    private String demandPost;
    //需求岗位id
    private String demandPostId;
    //需求人数
    private Integer demandNumber;
    //申请理由
    private String applicationReasons;
    //性别
    private String sex;
    //最大年龄
    private String maxAge;
    //最小年龄
    private String minAge;

    private String cusername;

    private Date cdate;

    //岗位职责
    @NotBlank(message="岗位职责不能为空", groups = {AddGroup.class, UpdateGroup.class})
    private String jobResponsibilities;
    //专业技能需求
    private String professionalSkills;
    //状态
    private String status;
    //结果
    private String result;
    //一级审核人
    private String firApprover;
    //一级审核日期
    private Date firApprovalDate;
    //一级审核说明
    private String firApprovalNote;
    //一级审核结果
    private String firApprovalResult;
    //二级审核人
    private String secApprover;
    //二级审核日期
    private Date secApprovalDate;
    //二级审核说明
    private String secApprovalNote;
    //二级审核结果
    private String secApprovalResult;
    //三级审核人
    private String thiApprover;
    //三级审核日期
    private Date thiApprovalDate;
    //三级审核说明
    private String thiApprovalNote;
    //三级审核结果
    private String thiApprovalResult;
    //四级审核人
    private String fouApprover;
    //四级审核日期
    private Date fouApprovalDate;
    //四级审核说明
    private String fouApprovalNote;
    //四级审核结果
    private String fouApprovalResult;
    //记载是第几次审批，不会录入数据库
    private String approveType;
    //记载是第几次审批说明，不会录入数据库
    private String approverNote;

    private String company;

    private String companyId;

    private String settlement;
    @NotBlank(message="结算点不能为空", groups = {AddGroup.class, UpdateGroup.class})
    private String settlementName;

    private Date arrivalDate;

    private String otherRequirements;

    private String proposedRemuneration;



    public String getApproveType() {
        return approveType;
    }

    public void setApproveType(String approveType) {
        this.approveType = approveType;
    }

    public String getApproverNote() {
        return approverNote;
    }

    public void setApproverNote(String approverNote) {
        this.approverNote = approverNote;
    }

    /**
     * 设置：ID
     */
    public void setId(Integer id) {
        this.id = id;
    }
    /**
     * 获取：ID
     */
    public Integer getId() {
        return id;
    }
    /**
     * 设置：申请部门
     */
    public void setApplyDept(String applyDept) {
        this.applyDept = applyDept;
    }
    /**
     * 获取：申请部门
     */
    public String getApplyDept() {
        return applyDept;
    }
    /**
     * 设置：申请部门id
     */
    public void setApplyDeptId(String applyDeptId) {
        this.applyDeptId = applyDeptId;
    }
    /**
     * 获取：申请部门id
     */
    public String getApplyDeptId() {
        return applyDeptId;
    }
    /**
     * 设置：需求岗位
     */
    public void setDemandPost(String demandPost) {
        this.demandPost = demandPost;
    }
    /**
     * 获取：需求岗位
     */
    public String getDemandPost() {
        return demandPost;
    }
    /**
     * 设置：需求岗位id
     */
    public void setDemandPostId(String demandPostId) {
        this.demandPostId = demandPostId;
    }
    /**
     * 获取：需求岗位id
     */
    public String getDemandPostId() {
        return demandPostId;
    }
    /**
     * 设置：需求人数
     */
    public void setDemandNumber(Integer demandNumber) {
        this.demandNumber = demandNumber;
    }
    /**
     * 获取：需求人数
     */
    public Integer getDemandNumber() {
        return demandNumber;
    }
    /**
     * 设置：申请理由
     */
    public void setApplicationReasons(String applicationReasons) {
        this.applicationReasons = applicationReasons;
    }
    /**
     * 获取：申请理由
     */
    public String getApplicationReasons() {
        return applicationReasons;
    }
    /**
     * 设置：性别
     */
    public void setSex(String sex) {
        this.sex = sex;
    }
    /**
     * 获取：性别
     */
    public String getSex() {
        return sex;
    }

    /**
     * 设置：岗位职责
     */
    public void setJobResponsibilities(String jobResponsibilities) {
        this.jobResponsibilities = jobResponsibilities;
    }
    /**
     * 获取：岗位职责
     */
    public String getJobResponsibilities() {
        return jobResponsibilities;
    }
    /**
     * 设置：专业技能需求
     */
    public void setProfessionalSkills(String professionalSkills) {
        this.professionalSkills = professionalSkills;
    }
    /**
     * 获取：专业技能需求
     */
    public String getProfessionalSkills() {
        return professionalSkills;
    }
    /**
     * 设置：状态
     */
    public void setStatus(String status) {
        this.status = status;
    }
    /**
     * 获取：状态
     */
    public String getStatus() {
        return status;
    }
    /**
     * 设置：结果
     */
    public void setResult(String result) {
        this.result = result;
    }
    /**
     * 获取：结果
     */
    public String getResult() {
        return result;
    }
    /**
     * 设置：一级审核人
     */
    public void setFirApprover(String firApprover) {
        this.firApprover = firApprover;
    }
    /**
     * 获取：一级审核人
     */
    public String getFirApprover() {
        return firApprover;
    }
    /**
     * 设置：一级审核日期
     */
    public void setFirApprovalDate(Date firApprovalDate) {
        this.firApprovalDate = firApprovalDate;
    }
    /**
     * 获取：一级审核日期
     */
    public Date getFirApprovalDate() {
        return firApprovalDate;
    }
    /**
     * 设置：一级审核说明
     */
    public void setFirApprovalNote(String firApprovalNote) {
        this.firApprovalNote = firApprovalNote;
    }
    /**
     * 获取：一级审核说明
     */
    public String getFirApprovalNote() {
        return firApprovalNote;
    }
    /**
     * 设置：一级审核结果
     */
    public void setFirApprovalResult(String firApprovalResult) {
        this.firApprovalResult = firApprovalResult;
    }
    /**
     * 获取：一级审核结果
     */
    public String getFirApprovalResult() {
        return firApprovalResult;
    }
    /**
     * 设置：二级审核人
     */
    public void setSecApprover(String secApprover) {
        this.secApprover = secApprover;
    }
    /**
     * 获取：二级审核人
     */
    public String getSecApprover() {
        return secApprover;
    }
    /**
     * 设置：二级审核日期
     */
    public void setSecApprovalDate(Date secApprovalDate) {
        this.secApprovalDate = secApprovalDate;
    }
    /**
     * 获取：二级审核日期
     */
    public Date getSecApprovalDate() {
        return secApprovalDate;
    }
    /**
     * 设置：二级审核说明
     */
    public void setSecApprovalNote(String secApprovalNote) {
        this.secApprovalNote = secApprovalNote;
    }
    /**
     * 获取：二级审核说明
     */
    public String getSecApprovalNote() {
        return secApprovalNote;
    }
    /**
     * 设置：二级审核结果
     */
    public void setSecApprovalResult(String secApprovalResult) {
        this.secApprovalResult = secApprovalResult;
    }
    /**
     * 获取：二级审核结果
     */
    public String getSecApprovalResult() {
        return secApprovalResult;
    }
    /**
     * 设置：三级审核人
     */
    public void setThiApprover(String thiApprover) {
        this.thiApprover = thiApprover;
    }
    /**
     * 获取：三级审核人
     */
    public String getThiApprover() {
        return thiApprover;
    }
    /**
     * 设置：三级审核日期
     */
    public void setThiApprovalDate(Date thiApprovalDate) {
        this.thiApprovalDate = thiApprovalDate;
    }
    /**
     * 获取：三级审核日期
     */
    public Date getThiApprovalDate() {
        return thiApprovalDate;
    }
    /**
     * 设置：三级审核说明
     */
    public void setThiApprovalNote(String thiApprovalNote) {
        this.thiApprovalNote = thiApprovalNote;
    }
    /**
     * 获取：三级审核说明
     */
    public String getThiApprovalNote() {
        return thiApprovalNote;
    }
    /**
     * 设置：三级审核结果
     */
    public void setThiApprovalResult(String thiApprovalResult) {
        this.thiApprovalResult = thiApprovalResult;
    }
    /**
     * 获取：三级审核结果
     */
    public String getThiApprovalResult() {
        return thiApprovalResult;
    }
    /**
     * 设置：四级审核人
     */
    public void setFouApprover(String fouApprover) {
        this.fouApprover = fouApprover;
    }
    /**
     * 获取：四级审核人
     */
    public String getFouApprover() {
        return fouApprover;
    }
    /**
     * 设置：四级审核日期
     */
    public void setFouApprovalDate(Date fouApprovalDate) {
        this.fouApprovalDate = fouApprovalDate;
    }
    /**
     * 获取：四级审核日期
     */
    public Date getFouApprovalDate() {
        return fouApprovalDate;
    }
    /**
     * 设置：四级审核说明
     */
    public void setFouApprovalNote(String fouApprovalNote) {
        this.fouApprovalNote = fouApprovalNote;
    }
    /**
     * 获取：四级审核说明
     */
    public String getFouApprovalNote() {
        return fouApprovalNote;
    }
    /**
     * 设置：四级审核结果
     */
    public void setFouApprovalResult(String fouApprovalResult) {
        this.fouApprovalResult = fouApprovalResult;
    }
    /**
     * 获取：四级审核结果
     */
    public String getFouApprovalResult() {
        return fouApprovalResult;
    }

    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

    public String getCompanyId() {
        return companyId;
    }

    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }

    public String getMaxAge() {
        return maxAge;
    }

    public void setMaxAge(String maxAge) {
        this.maxAge = maxAge;
    }

    public String getMinAge() {
        return minAge;
    }

    public void setMinAge(String minAge) {
        this.minAge = minAge;
    }

    public String getCusername() {
        return cusername;
    }

    public void setCusername(String cusername) {
        this.cusername = cusername;
    }

    public Date getCdate() {
        return cdate;
    }

    public void setCdate(Date cdate) {
        this.cdate = cdate;
    }

    public String getSettlement() {
        return settlement;
    }

    public void setSettlement(String settlement) {
        this.settlement = settlement;
    }

    public String getSettlementName() {
        return settlementName;
    }

    public void setSettlementName(String settlementName) {
        this.settlementName = settlementName;
    }

    public Date getArrivalDate() {
        return arrivalDate;
    }

    public void setArrivalDate(Date arrivalDate) {
        this.arrivalDate = arrivalDate;
    }

    public String getOtherRequirements() {
        return otherRequirements;
    }

    public void setOtherRequirements(String otherRequirements) {
        this.otherRequirements = otherRequirements;
    }

    public String getProposedRemuneration() {
        return proposedRemuneration;
    }

    public void setProposedRemuneration(String proposedRemuneration) {
        this.proposedRemuneration = proposedRemuneration;
    }
}
